GPS receivers normally determine their position by computing times of arrival of signals transmitted simultaneously from a multiplicity of GPS (or NAVSTAR) satellites. These satellites transmit, as part of their message, both satellite positioning data as well as data on clock timing, so-called “ephemeris” data. The process of searching for and acquiring GPS signals, reading the ephemeris data for a multiplicity of satellites and computing the location of the receiver from this data is time consuming, often requiring several minutes. In many cases, this lengthy processing time is unacceptable and, furthermore, greatly limits battery life in miniaturized portable applications.
GPS receiving systems have two principal functions. The first is the computation of the pseudoranges to the various GPS satellites, and the second is the computation of the position of the receiver using these pseudoranges and satellite timing and ephemeris data. The pseudoranges are simply the times of arrival of satellite signals measured by a local clock. This definition of pseudorange is sometimes also called code phase. The satellite ephemeris and timing data is extracted from the GPS signal once it is acquired and tracked. As stated above, collecting this information normally takes a relatively long time (30 seconds to several minutes) and must be accomplished with a good received signal level in order to achieve low error rates.
Most GPS receivers utilize correlation methods to compute pseudoranges. These correlation methods are performed in real time, often with hardware correlators. GPS signals contain high rate repetitive signals called pseudorandom (PN) sequences. The codes available for civilian applications are called C/A (coarse/acquisition) codes, and have a binary phase-reversal rate, or “chipping” rate, of 1.023 MHz and a repetition period of 1023 chips for a code period of 1 millisecond. The code sequences belong to a family known as Gold codes, and each GPS satellite broadcasts a signal with a unique Gold code.
For a signal received from a given GPS satellite, following a downconversion process to baseband, a correlation receiver multiplies the received signal by a stored replica of the appropriate Gold code contained within its local memory, and then integrates, or low-pass filters, the product in order to obtain an indication of the presence of the signal. This process is termed a “correlation” operation. By sequentially adjusting the relative timing of this stored replica relative to the received signal, and observing the correlation output, the receiver can determine the time delay between the received signal and a local clock. The initial determination of the presence of such an output is termed “acquisition.” Once acquisition occurs, the process enters the “tracking” phase in which the timing of the local reference is adjusted in small amounts in order to maintain a high correlation output. The correlation output during the tracking phase may be viewed as the GPS signal with the pseudorandom code removed, or, in common terminology, “despread.” This signal is narrow band, with a bandwidth commensurate with a 50 bit per second binary phase shift keyed (BPSK) data signal which is superimposed on the GPS waveform.
The correlation acquisition process is very time consuming, especially if received signals are weak. To improve acquisition time, most GPS receivers utilize a multiplicity of correlators (up to 36 typically) which allows a parallel search for correlation peaks.
Conventional GPS receiving equipment is typically designed to receive GPS signals in open spaces since the satellite signals are line-of-sight and can thus be blocked by metal and other materials. Improved GPS receivers provide signal sensitivity that allows tracking GPS satellite signals indoors, or in the presence of weak multipath signals or signals that are pure reflections. The ability to acquire such weak GPS signals, however, typically causes other problems. For example, the simultaneous tracking of strong and weak signals may cause the receiver to lock on to a cross-correlated signal, which is not a true signal. Instead of finding a weak true peak, a stronger cross-correlated peak may be acquired. Tracking a weak satellite signal does not guarantee that it is a direct signal. This weak signal may be a reflected signal or a combination of direct and indirect signals. The combined signals are referred to as multipath signals. The path of the reflected signal is typically longer than the path of the direct signal. This difference in path length causes the time-of-arrival measurement of the reflected signal to be typically delayed or the corresponding code phase measurement to contain a positive bias. In general, the magnitude of the bias is proportional to the relative delay between the reflected and direct paths. The possible absence of a direct signal component makes the existing multipath mitigation techniques (such as a narrow correlator or a strobe correlator) obsolete.
The GPS navigation message is the information transmitted to a GPS receiver from a GPS satellite. It is in the form of the 50 bit per second data stream that is modulated on the GPS signals.
The data message is contained in a data frame that is 1500 bits long. It has five subframes each of which contains GPS system time. Each subframe consists of 10 words of 30 bits each. Subframes 1 through 3 are repeated every 30 seconds. There are twenty-five pages of data appearing in sequence in the fourth and fifth subframes; one every 30 seconds. Thus, each of these twenty-five pages repeats every 750 seconds.
Subframes 4 and 5 contain two types of health or status data for the GPS satellites: (a) each of the 32 pages which contain the clock/ephemeris related almanac data provide an eight-bit satellite health status work regarding the satellite whose almanac data they carry, and (b) the 25th page of subframe 4 and 5 jointly contain six-bit health status data for up to 32 satellites. Additional satellite health data are given in subframe 1.
Typically, a GPS receiver will receive information concerning the status (e.g. “health”) of a satellite and then process the GPS signals by not acquiring and not tracking unhealthy satellites while it acquires and tracks GPS signals from healthy satellites. Alternatively, standalone GPS receivers can be designed to acquire and track unhealthy satellites but avoid using their signals in the location computation after having read the health status data from the ephemeris message from an unhealthy satellite's signal (see the related provisional patent application Method and Apparatus for Using Satellite Status Information in Satellite Positioning Systems, Serial No. 60/228,258, filed on Aug. 25, 2000, which is hereby incorporated herein by reference.)
Satellite position systems have used various types of assistance data to improve the performance of an SPS receiver. For example, an SPS receiver may receive Doppler estimates from an external source (e.g. a radio transmission to the SPS receiver). Another type of assistance data may be the identification of satellites in view of the estimated or known location of the SPS receiver. In the past, the identification of these satellites has not included any indication of whether the satellites may have a poor geometry relative to the estimated location of the SPS receiver or relative to each other. Also, in the past, the identification of satellites in view of an SPS receiver has not included an indication of poor geometry with satellite health data.